package cn.zzu.faceorgans.faceAPI;

import org.json.JSONArray;
import org.json.JSONObject;

import java.util.HashMap;
import java.util.Map;

import cn.zzu.faceorgans.utils.GetToken;
import cn.zzu.faceorgans.utils.GsonUtils;
import cn.zzu.faceorgans.utils.HttpUtil;

/**
 * 人脸关键点分析
 */
public class FaceLandmark {

    public static String faceLandmark() {
        // 请求url
        String url = "https://aip.baidubce.com/rest/2.0/face/v1/landmark";
        String imageBase64 = "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";
        try {
            Map<String, Object> map = new HashMap<>();
            map.put("image", imageBase64);
            map.put("face_field", "landmark150");
            map.put("image_type", "BASE64");

            String param = GsonUtils.toJson(map);

            // 注意这里仅为了简化编码每一次请求都去获取access_token，线上环境access_token有过期时间， 客户端可自行缓存，过期后重新获取。
            String accessToken = GetToken.getAuth();

            String result = HttpUtil.post(url, accessToken, "application/json", param);
            System.out.println(result);
            return result;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    public static String faceLandmark(String imageBase) {
        // 请求url
        String url = "https://aip.baidubce.com/rest/2.0/face/v1/landmark";
        String imageBase64 = imageBase;
        try {
            Map<String, Object> map = new HashMap<>();
            map.put("image", imageBase64);
            map.put("face_field", "landmark150");
            map.put("image_type", "BASE64");

            String param = GsonUtils.toJson(map);

            // 注意这里仅为了简化编码每一次请求都去获取access_token，线上环境access_token有过期时间， 客户端可自行缓存，过期后重新获取。
            String accessToken = GetToken.getRecentToken();

            String result = HttpUtil.post(url, accessToken, "application/json", param);
            System.out.println(result);
            return result;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }


    public static String faceLandmarkImportantPoint(String imageBase) {
        // 请求url
        String url = "https://aip.baidubce.com/rest/2.0/face/v1/landmark";
        String imageBase64 = imageBase;
        try {
            Map<String, Object> map = new HashMap<>();
            map.put("image", imageBase64);
            map.put("face_field", "landmark150");
            map.put("image_type", "BASE64");

            String param = GsonUtils.toJson(map);

            // 注意这里仅为了简化编码每一次请求都去获取access_token，线上环境access_token有过期时间， 客户端可自行缓存，过期后重新获取。
            String accessToken = GetToken.getRecentToken();

            String result = HttpUtil.post(url, accessToken, "application/json", param);
            System.out.println(result);



            // 获取json中的值
            JSONObject jsonObject = new JSONObject(result);
            // json中时间戳
            int timestamp = jsonObject.getInt("timestamp");
            System.out.println("timestamp: "+ timestamp);
            // json中result
            JSONObject resultObject = jsonObject.getJSONObject("result");
            System.out.println("resultObject: "+ resultObject);
            // json中face_list  人脸数量,如果图中只有一个人脸,则face_list的长度为1
            JSONArray faceList = resultObject.getJSONArray("face_list");
            // 第一个人脸
            JSONObject faceObject = faceList.getJSONObject(0);
            // 150个关键点
            JSONObject landmark150 = faceObject.getJSONObject("landmark150");
            System.out.println("landmark:"+ landmark150);
            System.out.println("landmark size:"+landmark150.length());

            // 测试01关键点
            JSONObject cheek_right_1 = landmark150.getJSONObject("cheek_right_1");
            System.out.println("cheek_right_1:" + cheek_right_1);
            double x = cheek_right_1.getDouble("x");
            double y = cheek_right_1.getDouble("y");
            System.out.println("x, y = " + x + ""+y);

            // 关键点坐标存储Map
            Map<String, Double> pointMap = new HashMap<String, Double>();
            //接下来是与穴位有对应关系的关键点
            // 86 : 左攒竹穴
            JSONObject point = landmark150.getJSONObject("eyebrow_left_upper_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("86x",x);
            pointMap.put("86y",y);
            // 41 : 左鱼腰穴
            point = landmark150.getJSONObject("eyebrow_left_upper_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("41x",x);
            pointMap.put("41y",y);
            //  87 : 左丝竹穴
            point = landmark150.getJSONObject("eyebrow_left_upper_5");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("87x",x);
            pointMap.put("87y",y);

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }

    public static Map<String, Double> faceLandmarkImportantPoint2(String imageBase) {
        // 请求url
        String url = "https://aip.baidubce.com/rest/2.0/face/v1/landmark";
        String imageBase64 = imageBase;
        try {
            Map<String, Object> map = new HashMap<>();
            map.put("image", imageBase64);
            map.put("face_field", "landmark150");
            map.put("image_type", "BASE64");

            String param = GsonUtils.toJson(map);

            // 注意这里仅为了简化编码每一次请求都去获取access_token，线上环境access_token有过期时间， 客户端可自行缓存，过期后重新获取。
            String accessToken = GetToken.getAuth();

            String result = HttpUtil.post(url, accessToken, "application/json", param);
            System.out.println(result);



            // 获取json中的值
            JSONObject jsonObject = new JSONObject(result);
            // json中时间戳
            int timestamp = jsonObject.getInt("timestamp");
            System.out.println("timestamp: "+ timestamp);
            // json中result
            JSONObject resultObject = jsonObject.getJSONObject("result");
            System.out.println("resultObject: "+ resultObject);
            // json中face_list  人脸数量,如果图中只有一个人脸,则face_list的长度为1
            JSONArray faceList = resultObject.getJSONArray("face_list");
            // 第一个人脸
            JSONObject faceObject = faceList.getJSONObject(0);
            // 150个关键点
            JSONObject landmark150 = faceObject.getJSONObject("landmark150");
            System.out.println("landmark:"+ landmark150);
            System.out.println("landmark size:"+landmark150.length());

            // 测试01关键点
            JSONObject cheek_right_1 = landmark150.getJSONObject("cheek_right_1");
            System.out.println("cheek_right_1:" + cheek_right_1);
            double x = cheek_right_1.getDouble("x");
            double y = cheek_right_1.getDouble("y");
            System.out.println("x, y = " + x + ""+y);

            // 关键点坐标存储Map
            Map<String, Double> pointMap = new HashMap<String, Double>();
            //接下来是与穴位有对应关系的关键点
            // 眉毛:
            // 86 : 左攒竹穴
            JSONObject point = landmark150.getJSONObject("eyebrow_left_upper_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("86x",x);
            pointMap.put("86y",y);
            // 41 : 左鱼腰穴
            point = landmark150.getJSONObject("eyebrow_left_upper_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("41x",x);
            pointMap.put("41y",y);
            //  87 : 左丝竹穴
            point = landmark150.getJSONObject("eyebrow_left_upper_5");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("87x",x);
            pointMap.put("87y",y);
            // 85 : 右攒竹穴
            point = landmark150.getJSONObject("eyebrow_right_upper_5");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("85x",x);
            pointMap.put("85y",y);
            //  24 : 右鱼腰穴
            point = landmark150.getJSONObject("eyebrow_right_upper_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("24x",x);
            pointMap.put("24y",y);
            // 84 : 右丝竹穴
            point = landmark150.getJSONObject("eyebrow_right_upper_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("84x",x);
            pointMap.put("84y",y);
            // 眼睛:
            // 38 : 左承泣穴
            point = landmark150.getJSONObject("eye_left_eyeball_center");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("38x",x);
            pointMap.put("38y",y);
            // 46 : 左上明穴
            point = landmark150.getJSONObject("eyebrow_left_lower_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("46x",x);
            pointMap.put("46y",y);
            //  102 : 左球后穴
            point = landmark150.getJSONObject("eye_left_eyelid_lower_7");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("102x",x);
            pointMap.put("102y",y);
            // 30 : 左晴明穴
            point = landmark150.getJSONObject("eye_left_corner_right");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("30x",x);
            pointMap.put("30y",y);
            //  18 : 右承泣穴
            point = landmark150.getJSONObject("eye_right_eyelid_lower_6");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("18x",x);
            pointMap.put("18y",y);
            //  27 : 右上明穴
            point = landmark150.getJSONObject("eyebrow_right_lower_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("27x",x);
            pointMap.put("27y",y);
            // 95 : 右球后穴
            point = landmark150.getJSONObject("eye_right_eyelid_lower_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("95x",x);
            pointMap.put("95y",y);
            // 17 : 右晴明穴
            point = landmark150.getJSONObject("eye_right_corner_left");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("17x",x);
            pointMap.put("17y",y);
            // 鼻子:
            // 54 : 左上迎香穴
            point = landmark150.getJSONObject("nose_left_contour_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("54x",x);
            pointMap.put("54y",y);
            //  57 : 素髎穴
            point = landmark150.getJSONObject("nose_tip");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("57x",x);
            pointMap.put("57y",y);
            // 108 : 山根穴
            point = landmark150.getJSONObject("nose_bridge_1");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("108x",x);
            pointMap.put("108y",y);
            // 49 : 右上迎香穴
            point = landmark150.getJSONObject("nose_right_contour_3");
            x = point.getDouble("x");
            y = point.getDouble("y");
            pointMap.put("49x",x);
            pointMap.put("49y",y);
            // 嘴巴:
            // 62 : 左地仓穴
//            point = landmark150.getJSONObject("mouse_corner_left_outer");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("62x",x);
//            pointMap.put("62y",y);
//            // 63 : 左夹承浆穴
//            point = landmark150.getJSONObject("mouse_lip_lower_outer_9");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("63x",x);
//            pointMap.put("63y",y);
//            // 122 : 左禾髎穴
//            point = landmark150.getJSONObject("mouse_lip_upper_outer_7");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("122x",x);
//            pointMap.put("122y",y);
//            // 64 : 承浆穴
//            point = landmark150.getJSONObject("mouse_lip_lower_outer_6");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("64x",x);
//            pointMap.put("64y",y);
//            // 58 : 右地仓穴
//            point = landmark150.getJSONObject("mouse_corner_right_outer");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("58x",x);
//            pointMap.put("58y",y);
//            // 60 : 兑瑞穴
//            point = landmark150.getJSONObject("mouse_lip_upper_outer_6");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("60x",x);
//            pointMap.put("60y",y);
//            // 65 : 右夹承浆穴
//            point = landmark150.getJSONObject("mouse_lip_lower_outer_3");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("65x",x);
//            pointMap.put("65y",y);
//            // 121 : 右禾髎穴
//            point = landmark150.getJSONObject("mouse_lip_upper_outer_5");
//            x = point.getDouble("x");
//            y = point.getDouble("y");
//            pointMap.put("121x",x);
//            pointMap.put("121y",y);
            // 总结: 26个关键点对应穴位

            return pointMap;

        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
}
